Embodiments of the present invention relate generally to the field of computer storage management, and more particularly to sharing read-only data among virtual machines using CAPI-enabled flash.
Flash storage devices, also referred to as Solid State Disk (SSD) devices, generally demonstrate advantages over Hard Disk Drives (HDD) because they are based on a semiconductor memory technology rather than on rotating mechanical media as in HDDs. Flash storage devices generally exhibit lower latencies and faster response times. These characteristics offer higher throughput, especially for enterprise workloads such as data analytics that are Input/Output (I/O) intensive. Although having nearly no seek time, a flash write cycle may take significantly more time than a read request. Due to the architectural characteristics of flash storage technology, the physical amount of data written exceeds the logical I/O request. In flash storage technology, data is not directly overwritten, but is only marked for later deletion, an operation that occurs at the block level. Therefore, over time data in a file may become increasingly fragmented and spread over several blocks. The process includes mapping and updating the location of the data within the blocks, then erasing the affected blocks. To circumvent the slower write cycle, a significant portion of a flash storage unit is dedicated to caching and spooling writes to the actual flash storage devices. Additionally, to ensure durability a 300 gigabyte (GB) flash drive actually may have 600 GB of capacity to compensate for the limited write cycle life inherent in a flash device. The flash drive includes controllers, software and drivers to manage the block relocation and the write cycle life.
Using flash-based storage without requiring large amounts of write cache and intelligent controllers may extend the useful life of the flash storage and increase performance in cloud and virtualized enterprise server environments.